home *** CD-ROM | disk | FTP | other *** search
-
- README file for the Scrolling application.
-
- The Scrolling application looks at a variety of drawing issues. These include efficient
- path construction, use of the user path cache, setting graphic state parameters and
- drawing only that which is necessary. The Scrolling application can read a "distilled"
- PostScript file (one that is in a prescribed format) and place the graphic components into
- data structures for efficient display. The data structure consists of a list of graphics, with each
- graphic holding the path, its display parameters (line width, color, etcs) and whether the path
- should be stroked or filled. When a section is drawn, the list is traversed and the graphics
- are drawn.
-
-
- Below lies an annotated list of the files used in the application.
-
- ScrollingApp - A subclass of Application. Creates the window with the
- ScrollView, DocView and DrawingView. Provides the
- id's of the items in the Drawing Options Panel (matrices, buttons, etc).
- DocView - A subclass of View. Serves as the DocView for the ScrollView.
- Makes the DrawingView a subview making it easier to
- size and scale the DrawingView. The Drawing View is
- resized whenever the user zooms into or out of the
- document.
- DrawingView - A subclass of View. The view manages the drawing. It cycles
- through the list of graphic objects messaging each one to
- draw itself in turn. It provides a large UPath structure for each
- graphic to use instead of having each graphic keep one on hand
- or mallocing one each time drawing occurs.
- Graphic - A sublcass of Object. Holds the path and graphic state parameters
- for a single component of the drawing.
-
- DrawingViewWraps - Wraps for timing, obtaining ucache information and setting parameters.
-
-
- EpsfParser.m These files parse an EPS file first verifying it as EPS and then as
- lex.l a distilled file. The parsing acts as a rudimentry interpreter placing
- ierror.c items on the stack and the popping them. A new graphic object is
- iinterpreter.c created whenever a stroke or fill occurs when parsing. When this
- iintrepreterhooks.m happens, the current graphics state and the current path in this
- iparser.c simple interpreter are installed in the new graphic object.
- iparserhooks.m
-
-
- Topics of interest from the Scrolling application:
-
- Path construction and display (DrawingView, Graphic)
- Parsing a PostScript file - distilled format (EpsfParser.m, ierror, iinterpreterhooks,
- iinterpreter, iparserhooks, iparser, lex)
- Scaling the view (DocView, DrawingView)
-